#include <iostream>
#include <cstdlib>
#include <iomanip>
#include <conio.h>
#include "Ropucha.hpp"
#include "Gra.hpp"

using namespace std;
/*void map(Ropucha zielona)
{
    cout<<setw(30);
    cout<<char(218);
    for(int i=20; i>=0; i--)
    cout<<char(196);
    cout<<char(191)<<endl;
    for(int i=15; i>=0; i--)
    {cout<<setw(30);
     cout<<char(179);
     for(int j=20; j>=0; j--)
         if(zielona.getY()==i && zielona.getX()==j){cout<<"R";}else
         cout<<" ";
     cout<<char(179)<<endl;
    }
    cout<<setw(30);
    cout<<char(192);
    for(int i=20; i>=0; i--)
    cout<<char(196);
    cout<<char(217)<< endl;
}
*/
void sterowanie()
{
    system("cls");
    cout<<setw(37)<<"Krok\n";
    cout<<setw(37)<<"Gora - w\n";
    cout<<setw(37)<<"Lewo - a\n";
    cout<<setw(37)<<"Prawo- d\n";
    cout<<setw(38)<<"Dol  - s\n\n";
    cout<<setw(37)<<"Skok\n";
    cout<<setw(37)<<"Gora - W\n";
    cout<<setw(37)<<"Lewo - A\n";
    cout<<setw(37)<<"Prawo- D\n";
    cout<<setw(38)<<"Dol  - S\n\n";
    cout<<setw(42)<<"ESC - wyjscie\n";
    getch();

}
void zasady()
{
    cout<<"Gracz moze poruszac sie ropucha po calej mapie w dowolnym kierunku. Dozwolone \njest wykonanie kroku, ktory przesuwa";
    cout<<" ropuche o jedno pole i zabiera jej 0.2 \nenergi, oraz skok ktory przesuwa ja o 3 pola ale zabiera 1.5 jednostki energii.\n";
    cout<<" Jezeli energia ropuchy spadnie ponizej zera gra sie konczy.\n";
    getch();
}

void autorzy()
{
    cout<<"Kuba Witczak (a.k.a. Bubak)\n";
    cout<<"Damian Zawada\n";
    getch();
}

void opcje()
{
    char decyzja=0;
    do
    {
        system("cls");
        cout<<setw(40)<<"Opcje\n";
        cout<<setw(44)<<"1.Sterowanie\n";
        cout<<setw(40)<<"2.Zasady\n";
        cout<<setw(41)<<"3.Autorzy\n";
        cout<<setw(47)<<"Wcisinij esc by wyjsc\n";
        decyzja=getch();
        switch(decyzja)
        {
        case 49: sterowanie();break;
        case 50: zasady();break;
        case 51: autorzy();break;
        }
    }while(decyzja!=27);
}
/*void powitanie(Ropucha zielona);

void gra(Ropucha zielona)
{
    char kierunek=0;
    bool cos = false;
    do
    {
    kierunek=getch();
    if(kierunek=='o')
    {opcje();}
    else
    {
    if(kierunek>64 && kierunek<90)
    zielona.skok(kierunek);
    else
    zielona.krok(kierunek);}
    system("cls");
    //rysuj();
    //map(zielona);
    cout<<setw(40) << "Energia: " << zielona.getE()<<endl;
    cout<<setw(41) << "Pozycja: (" << zielona.getX() <<","<<zielona.getY()<<")\n";
    if(zielona.getE()<=0)
    {
        zielona.setIsAlive(cos);
    }
    if(!(zielona.getIsAlive()))
    {
        cout<<"Zielona ropucha zginela\n"; kierunek=27;
    }
    }while(!(kierunek==27 || zielona.getIsAlive()==false));
    if(kierunek==27)powitanie(zielona);
}
*/
int main()
{
    Gra gra;
    char decyzja=0;
        do
        {
            system("cls");
        cout<<setw(47)<<"Witaj w Grze o Zycie!\n";
        cout<<setw(40)<<"1.Start\n";
        cout<<setw(40)<<"2.Opcje\n";
        cout<<setw(47)<<"Wcisinij ESC by wyjsc\n";
        decyzja=getch();
        system("cls");
        switch(decyzja)
        {
        case 27: exit(1);
        case 49: gra.krok(); break;
        case 50: opcje();break;
        }
        }while(decyzja!=1);
    system("Pause");
    return 0;
}
/*void powitanie(Ropucha zielona)
{
    char decyzja=0;
    do
    {
        system("cls");
    cout<<setw(47)<<"Witaj w Grze o Zycie!\n";
    cout<<setw(40)<<"1.Start\n";
    cout<<setw(40)<<"2.Opcje\n";
    cout<<setw(47)<<"Wcisinij ESC by wyjsc\n";
    decyzja=getch();
    switch(decyzja)
    {
    case 27: exit(1);
    case 49: krok(); break;
    case 50: opcje();break;
    }
    }while(decyzja!=1);
}
*/
